package com.oro.converters;

import java.util.List;

import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.faces.convert.ConverterException;

import org.springframework.web.jsf.FacesContextUtils;

import com.oro.backingbeans.InserisciScuolaBean;
import com.oro.domain.ContattoScuola;

public class ContattoScuolaStringConverter implements Converter {

	private List<ContattoScuola> contattiScuola;

	@Override
	public Object getAsObject(FacesContext context, UIComponent component,
			String value) throws ConverterException {

		InserisciScuolaBean inserisciScuolaBean = (InserisciScuolaBean) FacesContextUtils
				.getWebApplicationContext(context).getBean(
						"inserisciScuolaBean");

		contattiScuola = inserisciScuolaBean.getSchoolInput()
				.getContattiDiRiferimento();

		for (ContattoScuola cs : contattiScuola) {
			if (cs.toString().equals(value))
				return cs;
		}
		return null;

	}

	@Override
	public String getAsString(FacesContext context, UIComponent component,
			Object value) throws ConverterException {

		ContattoScuola cs = (ContattoScuola) value;
		
		if (cs != null)
			return cs.toString();
		else
			return "NULL";

	}

	public List<ContattoScuola> getContattiScuola() {
		return contattiScuola;
	}

	public void setContattiScuola(List<ContattoScuola> contattiScuola) {
		this.contattiScuola = contattiScuola;
	}

}
